package com.aliyun.oss.service;

import com.aliyun.oss.pojo.DTO.AddFoodDTO;
import com.aliyun.oss.pojo.Entity.Food;
import com.aliyun.oss.pojo.Vo.FoodVO;
import com.aliyun.oss.pojo.Vo.GetFoodByIdVO;
import com.aliyuncs.exceptions.ClientException;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fasterxml.jackson.core.JsonProcessingException;

import java.util.List;

public interface FoodService extends IService<Food> {
    List<FoodVO> getAllFoods();

    List<FoodVO> queryFoodLikeByNameOrCategoryIdOrStatus(String name, Integer categoryId, Integer status);

    void deleteFoodById(Integer id);

    void updateFoodStatusById(Integer operateId, Integer id, Integer status);

    void BatchDeleteFoodsByIds(String[] ids);

    void addFood(Integer operateId, AddFoodDTO addFoodDTO) throws JsonProcessingException;

    GetFoodByIdVO getFoodById(Integer operateId, Integer id);

    void updateFoodById(Integer operateId, AddFoodDTO addFoodDTO) throws JsonProcessingException, ClientException;
}
